#include "pch.hpp"
#include "query.hpp"
#include "exception.hpp"

using namespace sql;




query::query(QSqlDatabase database)
	: m_query(database)
{}
///////////////////////////////////////////////////////////////////////////////////////////////////

query::query(QString query_string, QSqlDatabase database)
	: m_query(query_string, database)
{}
///////////////////////////////////////////////////////////////////////////////////////////////////




void query::prepare(QString query_string)
{
	if(!m_query.prepare(query_string))
		BOOSTEXT_THROW(exception("Unable to prepare sql statement", m_query.lastError()));
}
///////////////////////////////////////////////////////////////////////////////////////////////////

void query::exec()
{
	if(!m_query.exec())
		BOOSTEXT_THROW(exception("Unable to execute sql statement", m_query.lastError()));
}
///////////////////////////////////////////////////////////////////////////////////////////////////

bool query::try_exec()
{
	return m_query.exec();
}
///////////////////////////////////////////////////////////////////////////////////////////////////

QSqlError query::lastError()
{
	return m_query.lastError();
}
///////////////////////////////////////////////////////////////////////////////////////////////////
